🏠
UberASM Objects

The baserom uses a framework of custom objects to allow you to toggle or activate some simple UberASM codes that are in the baserom, most of which are very basic utility features or simple state changes. They are activated simply by inserting a custom extended object into whichever levels you want with no limit. These objects work alongside any level UberASM you may want to use as well.

Contents


Available Objects

The tables below detail the objects available in the baserom and what their purpose is. Each object has a unique ID number that corresponds to its "extended object" value that is to be used when inserting it as a Custom Object in Lunar Magic. Simply make note of the ID(s) of object(s) you would like you use and insert them in your level manually.

Feature Toggles

The following objects can be used to enable or toggle features or settings in the baserom, or activate a simple UberASM.

IDObjectDescription
98Free Vertical ScrollMakes the camera follow Mario up and down.
99Lock Horizontal ScrollPrevents the camera from scrolling left or right.
9AStart in OFF StateStarts the level with the ON/OFF state in the OFF state.
9BEnable Block DuplicationDisable the effects of a patch that prevents block duplication.
9CHide StatusbarHides the Layer 3 statusbar. This does not disable the score, coin counters, timer or item box.
9DEnable Screen ScrollDisable the effects of a patch that prevents scrolling the screen with L or R.
9EEnable SFX EchoEnable the echo for sound effects. Requires your level to have custom music with echo enabled.
A0No Power-up CollectionPrevent Mario from collecting any power-ups including to the item box. Keeps Mario small.
A2Disable Cape Turnaround ConsistencyDisable the effects of the patch that makes turning around with cape consistent on button press.
A3Enable 8-frame Cape FloatApply a consistent 8 frame counter after the input is registered to adjust Mario's falling speed with cape.
A4Remove Cape Float DelaySet the delay before Mario starts floating with cape to zero frames.
A5Death on Power-up LossLosing a power up will kill Mario instantly. Makes all hurt blocks death blocks and all damaging sprites lethal.
A7Press L & R To DieKills the player if L and R are pressed. Useful for a quick reset.
A9Disable Spin Jump FireballsPrevent Mario from shooting fireballs while spin jumping.
AARestore Vanilla Springboard QuirksDisable the effects of a patch that prevents re-grabbing kicked springboards and them zeroing your speed when grabbed. (Enabling spring midairs).
ABDisable Cape FlightPrevents Mario from ever entering flight with cape.
ACDisable Screen ShakeStops all Vanilla sources of Layer 1 screen shake.
Earlier versions of the baserom may have fewer objects.

Retry System Settings

Inserting these objects into your level to override the default settings of the retry system or even change the retry settings between sublevels.

IDObjectDescription
B0Instant RetryMake the retry skip using prompt and restart instantly after dying.
B1Prompt RetrySet the retry system to use a prompt that says "Retry" in the middle of the screen.
B2Bottom Left Retry PromptMove the "Retry" prompt to the bottom left if Prompt Retry is active (by default it's in the middle).
B3No Power Ups from MidwaysDisable gaining a power-up (mushroom) from a midway point.
B4Vanilla RetrySet the retry system back to using Vanilla death routine.
B6Enable Retry IndicatorDisplay an indicator in the HUD when a level using fast retry.
Retry indicator only in version 5.7 or later of the baserom.

Initial Player States

You can use these objects to start the player in various states when they enter the level at any point.

IDObjectDescription
C0Start with a MushroomHave the player start the level with a Mushroom.
C1Start with CapeHave the player start the level with a Cape.
C2Start with Fire FlowerHave the player start the level with a Fire Flower.
C3Start with Star PowerHave the player start the level with Star Power. Not infinite, lasts as long as a normal Star.
C4Start on Green YoshiHave the player start the level on a Green Yoshi.
C5Start on Yellow YoshiHave the player start the level on a Yellow Yoshi.
C6Start on Blue YoshiHave the player start the level on a Blue Yoshi.
C7Start on Red YoshiHave the player start the level on a Red Yoshi.
C8Start in Spin Jump StateHave the player start the level spinning (most useful when Mario is in the air).
These objects are in version 5.7 or later of the baserom.

Due to how the memory works for the power-up or Yoshi states you can only have one of each of those objects active at a time, you can't have Cape and Flower or two Yoshi objects.


Inserting Custom Objects

To insert a custom UberASM object, make note of the custom ID value from the tables above.

Next, open the "Add Object Manual (hex)" window while in Lunar Magic's "Layer 1 editing" mode, either from the "Edit → Insert manual..." menu action, or by pressing the Insert key in this mode.

In the window that appears, type the ID value for the UberASM Object of your choice into the "Size/Type/Ext" field, leaving the other fields at zero (0), and press OK to insert.

Lunar Magic's Add Object Manual (hex) Window

Multiple custom extended objects can be inserted by repeating the steps above for each UberASM object.

Appearance in Lunar Magic

When inserted, custom extended objects will look like a pair of garbage tiles in Lunar Magic, but these objects won't actually appear in game.

Garbled Custom object tiles in Lunar Magic

An object may occasionally use an exit-enabled (door) tile which may display a warning depending on your Lunar Magic settings (the included objects avoid this by skipping some IDs).